<template>
    <div class="m-sidebar" :class="{'m-sidebar__mini': !isSideOpen}">
        <MLogo></MLogo>
        <MMenu></MMenu>
        <MFooter></MFooter>
    </div>
</template>

<script>
import MLogo from '@/components/sidebar/logo.vue'
import MFooter from '@/components/sidebar/footer.vue'
import MMenu from '@/components/sidebar/menu.vue'

export default {
    name: 'm-sidebar',
    components: {
        MLogo,
        MFooter,
        MMenu,
    },
    data() {
        return {

        }
    },
    computed: {
        isSideOpen() {
            return this.$store.state.isSideOpen;
        },
    },
}
</script>

<style lang="scss" scoped>
.m-sidebar {
    width: 220px;
    height: 100vh;
    font-size: 0.875rem;
    flex-shrink: 0;
    transition: width 0.3s;
    transform: translate3d(0, 0, 0);
    background: #fff;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    &__mini {
        width: 60px;
    }
}
</style>